// 引入接口文件
import {addform} from './editDistributionOfConsultantServ'

// 对象和JSON字符串互转
import { parse } from 'qs'
// 弹出消息框
import { message } from 'antd'
// 日期处理对象
import moment from 'moment'
/* isEmpty 对象是否为空
 * isArray 对象是否数组
 * cloneDeep 对象深拷贝
 */
import { isEmpty, isArray, cloneDeep, merge } from 'lodash'
// 引入路由对象
import { hashHistory } from 'dva/router'
import { makeAddress } from "utils/util"
// 初始默认状态
const state = {
        btnLoading: false,
        areaList: [],
        showAddVisible: false,
        projectList: [],
        createConsultantParams: {},
        type: '',
        lock: false,
        isHasScore: false,
        flagZeroId: ''
    }
    // 声明module
const tmpModule = {
    namespace: 'editDistributionOfConsultantMod',
    // 默认状态
    state: cloneDeep(state),
    // 入口函数(先执行)
    subscriptions: {
        setup({ dispatch, history }) {
            history.listen(({ pathname, query }) => {
                // 页面路由匹配时执行
                if ('' + tmpModule.pathname === '' + pathname) {
                    dispatch({ type: 'updateStore', payload: {createConsultantParams: query}});
                }
            })
        },
    },

    // 方法列表
    effects: {
        *addform({ payload }, { put, call, select }){
            try {
                let { createConsultantParams } = yield select(state => state[tmpModule.namespace])
                const { success } = yield call(addform, createConsultantParams);
                if (success){
                    message.success('保存成功')
                }
            }catch (e) {

            }
        }
    },
    // 存入状态机
    reducers: {
        updateStore(preState, action) {
            return Object.assign({}, preState, action.payload)
        },
    }
}

export default tmpModule